#pragma once

#include <GL/glew.h>
#include <vector>

namespace teflon
{
	class VertexArray
	{
	private:
		GLuint vao = 0;
		std::vector<GLuint> vbos;

	public:
		VertexArray();
		~VertexArray();

		void Bind() const { glBindVertexArray(vao); }
		void Unbind() const { glBindVertexArray(0); }
		void AddData(GLfloat* data, int num_vertices, int vertex_size, int location);

		// clear all allocated vertex buffers.
		void Clear();
	};
}
